package com.sitia.jd.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.sitia.jd.domain.MxOrder;
import com.sitia.jd.domain.MxOrderHis;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * mx订单历史Mapper接口
 * 
 * @author sitia
 * @date 2024-09-07
 */
public interface MxOrderHisMapper  extends BaseMapper<MxOrderHis>
{
    /**
     * 查询mx订单历史
     * 
     * @param hisId mx订单历史主键
     * @return mx订单历史
     */
    public MxOrderHis selectMxOrderHisByHisId(Long hisId);

    /**
     * 查询mx订单历史列表
     * 
     * @param mxOrderHis mx订单历史
     * @return mx订单历史集合
     */
    public List<MxOrderHis> selectMxOrderHisList(MxOrderHis mxOrderHis);

    /**
     * 新增mx订单历史
     * 
     * @param mxOrderHis mx订单历史
     * @return 结果
     */
    public int insertMxOrderHis(MxOrderHis mxOrderHis);

    /**
     * 修改mx订单历史
     * 
     * @param mxOrderHis mx订单历史
     * @return 结果
     */
    public int updateMxOrderHis(MxOrderHis mxOrderHis);

    /**
     * 删除mx订单历史
     * 
     * @param hisId mx订单历史主键
     * @return 结果
     */
    public int deleteMxOrderHisByHisId(Long hisId);

    /**
     * 批量删除mx订单历史
     * 
     * @param hisIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMxOrderHisByHisIds(Long[] hisIds);

    /**
     * 查看页面历史列表
     * @param mxOrderHis
     * @return
     */
    List<MxOrderHis> selectMxOrderHisPageList(MxOrderHis mxOrderHis);

    /**
     * 订单归历史
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @param username 用户名
     * @param userId 用户id
     * @return
     */
    int archiveOrder(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("username") String username, @Param("userId") Long userId);
}